Developer Documentation

QuickTime 4 API Documentation

QuickTime Movie File Format Specification, May 1996

| Previous | Chapter contents | Chapter top | Next |

Track Input Map Atoms

Track input map atoms define how data being sent to this track from its non-primary sources is to be interpreted. Track references of type ' ssrc ' define a track's secondary data sources. These sources provide additional data that is used when processing the track. Track input map atoms are optional and have an atom type value of ' imap ' .

Figure 0-17 shows the layout of a track input map atom. This atom contains one or more track input atoms. Note that the track input map atom is a QT atom structure.

Figure 17 The layout of a track input map atom

Each track input map atom contains the following data elements.

Size
A 32-bit integer that specifies the number of bytes in this track input map atom.
Type
A 32-bit integer that identifies the atom type; this field must be set to ' imap ' .
Track input atoms
A list of track input atoms specifying how to use the input data.

The input map defines all of the track's secondary inputs. Each secondary input is defined using a separate track input atom.

Each track input atom contains the following data elements.

Size
A 32-bit integer that specifies the number of bytes in this track input atom.
Type
A 32-bit integer that identifies the atom type; this field must be set to ' in ' (note that the two leading bytes must be set to 0x00).
Atom ID
A 32-bit integer relating this track input atom to its secondary input. The value of this field corresponds to the index of the secondary input in the track reference atom. That is, the first secondary input corresponds to the track input atom with an Atom ID value of 1; the second to the track input atom with an Atom ID of 2, and so on.
Reserved
A 16-bit integer that must be set to 0.
Child count
A 16-bit integer specifying the number of child atoms in this atom.
Reserved
A 32-bit integer that must be set to 0.

The track input atom, in turn, may contain two other types of atoms: input type atoms and object ID atoms. The input type atom is required; it specifies how the data is to be interpreted.

The input type atom contains the following data elements.

Size
A 32-bit integer that specifies the number of bytes in this input type atom.
Type
A 32-bit integer that identifies the atom type; this field must be set to ' ty ' (note that the two leading bytes must be set to 0x00).
Input type
A 32-bit integer that specifies the type of data that is to be received from the secondary data source. Table 0-3 lists valid values for this field.

Table 3 Input types 

Input
identifier

Description

1

A 3x3 transformation matrix to transform the track's location, scaling, and so on.

2

A QuickDraw clipping region to change the track's shape.

3

An 8.8 fixed point value indicating the relative sound volume. This is used for fading the volume.

4

A 16-bit integer indicating the sound balance level. This is used for panning the sound location.

5

A graphics mode record (32-bit integer indicating graphics mode, followed by an RGB color) to modify the track's graphics mode for visual fades.

6

A 3x3 transformation matrix to transform an object within the track's location, scaling, and so on.

7

A graphics mode record (32-bit integer indicating graphics mode, followed by an RGB color) to modify an object within the track's graphics mode for visual fades.

'vide'

Compressed image data for an object within the track.

If the input is operating on an object within the track (for example, a sprite within a sprite track), an object ID atom must be included in the track input atom to identify the object.

The object ID atom contains the following data elements.

Size
A 32-bit integer that specifies the number of bytes in this object ID atom.
Type
A 32-bit integer that identifies the atom type; this field must be set to ' obid ' .
Object ID
A 32-bit integer identifying the object.

© 1997 Apple Computer, Inc.

| Previous | Chapter contents | Chapter top | Next |